package com.hnas.trade.service;

import java.util.List;

import com.hnas.trade.dto.DTOTradeRecord;
import com.hnas.trade.dto.intf.DTOSearchGetComsumDiscount;
import com.hnas.trade.orm.AbnormalOrder;
import com.hnas.trade.orm.TradeRecord;

public interface TradeRecordService {
	TradeRecord saveOrUpdate(DTOTradeRecord dto) throws Exception;//保存修改交易记录
	
	TradeRecord findById(String id);
	
	TradeRecord findByOrderNo(String orderNO);
	
	TradeRecord findBySwiftNumber(String swiftNumber);

	List<TradeRecord> getList(String account_id, String order_parent_type, String order_type, int pageNo, int pageSize);

	/**
	 * 查询交易记录
	 * @param account_id
	 * @param order_parent_type
	 * @param order_type
	 * @param date
	 * @return
	 */
	List<TradeRecord> getAllByDate(String account_id, String order_parent_type, String order_type, String date, int pageNo,int pageSize,boolean isToDay);
	
	List<TradeRecord> getList2(String account_id, String order_parent_type, String order_type, String date,int pageNo,
			int pageSize);

	TradeRecord findByTradeSno(String tradeSno);
	
	
	void updateAndAddAbrcord(String tradeSno,AbnormalOrder abnormalOrder) throws Exception ;
	/**
	 * 根据条件查询消费优惠金额
	 * @return
	 */
	Double getComsumDiscount(DTOSearchGetComsumDiscount dto);
	/**
	 * 电子卡获取正常交易记录
	 * @Title: getAllByDate  
	 * @Description:  
	 * @param account_id
	 * @param cardNos
	 * @param order_parent_type
	 * @param order_type
	 * @param date
	 * @param pageNo
	 * @param pageSize
	 * @param isToDay
	 * @return
	 * @throws
	 */
	List<TradeRecord> findTradeRecordList(String account_id, String cardNos, String order_parent_type, String order_type, String date, int pageNo,int pageSize,boolean isToDay);
	
}
